This invention relates to a method for establishing a common time reference among two or more systems or subsystems dealing with time-dependent information, and is particularly applicable to distributed data acquisition and/or data processing systems.
There are many applications in which it is either necessary or desirable to distribute the acquisition or processing of data over a number of computer-controlled stations, usually for reasons related to distance between data-receiving transducers or the need for dividing up a very heavy workload into more manageable sub-parts, with each sub-part being handled by a separate processor. Real-time data acquisition and processing, e.g. monitoring of a common event by multiple stations, process control monitoring, and sequence of events recording are among the many environments which require multiple autonomous data and control streams. Additionally, these tasks demand that the temporal relationships between the data and/or control streams of the various stations involved be preserved.
Thus, because of either the spatial requirements or the intense input-output and computational requirements of such data acquisition and/or processing systems, the control and data streams are often distributed among many processors. In order to maintain time synchronization between the data and control streams of the processors, current systems depend on:
1. Shared hardware for their synchronization, typically a common clock and reset line, requiring a direct connection between the common clock and each of the stations to be synchronized to the common clock; or
2. Where a direct connection is not feasible, the wireless transmission of time information from a common clock to each of the stations. In such cases temporal uncertainty due to communications delay determines the overall error in time resolution of the system.
Even where a direct connection is employed, temporal uncertainty limits system time resolution when the distances between stations are substantial.
In a system having multiple stations it is desirable for each station to have its own clock, often because it is not feasible for each station to share a single clock; and so that the station can continue operating even if communication with the common clock is temporarily lost. However, such individual clocks may operate at slightly different frequencies, and begin at different reference times, further compounding the time resolution/synchronization problem.
One arrangement for synchronizing multiple processors is described in an article entitled "Time Source Synchronizes Computers In Networks", published in the Sept. 21, 1987 edition of Electronic Engineering Times. This arrangement utilizes specialized hardware to maintain local clocks synchronized to a national standard.
Accordingly, an object of the present invention is to provide a method for referencing the clocks of multiple stations (which can, but need not necessarily be data acquisition/processing stations) to a common time base.
Another object of the invention is to provide such a method which is capable of minimizing the effects of variations in clock frequency among the various clocks involved.
A further object of the invention is to provide such a method which is capable of minimizing the effects of variations in reference time among the various clocks involved.
Still another object of the invention is to provide such a method which is capable of minimizing the adverse effects of transmission time and variations therein.
A still further object of the invention is to provide a method having one or more of the aforementioned features which is amenable to processing accumulated time information to derive information referenced to a desired time standard from information referenced to a given time standard.
Yet another object of the invention is to meet the aforementioned objectives through the use of standard data communications means and standard computer operating systems.